const webpack = require('webpack')

module.exports = {
    lintOnSave : false,
    publicPath: '/static/dist/fkl-salary/',// 部署应用时的根路径(默认'/'),也可用相对路径(存在使用限制)
    outputDir: "dist", // 运行时生成的生产环境构建文件的目录(默认''dist''，构建之前会被清除)
    assetsDir: "static", //放置生成的静态资源(s、css、img、fonts)的(相对于 outputDir 的)目录(默认'')
    indexPath: "fkl_index.html", //指定生成的 index.html 的输出路径(相对于 outputDir)也可以是一个绝对路径。
    pages: {
        //pages 里配置的路径和文件名在你的文档目录必须存在 否则启动服务会报错
        index: {
            //除了 entry 之外都是可选的
            entry: "src/main.js", // page 的入口,每个“page”应该有一个对应的 JavaScript 入口文件
            template: "public/index.html", // 模板来源
            filename: "index.html", // 在 dist/index.html 的输出
            title: "FKL-Salary", // 当使用 title 选项时,在 template 中使用：<title><%= htmlWebpackPlugin.options.title %></title>
            chunks: ["chunk-vendors", "chunk-common", "index", "manifest"] // 在这个页面中包含的块，默认情况下会包含,提取出来的通用 chunk 和 vendor chunk
        }
    },
    // 配置webpack
    configureWebpack: {
        cache: true,
        plugins: [
        ],
        performance: {
            hints: false
        },
        optimization: {
            // vue cli 3.x默认没有生产manifest.js文件
            runtimeChunk: process.env.NODE_ENV === "production" ? { name: "manifest" } : false,
            splitChunks: {}
        }
    },
    // 扩展webpack配置
    chainWebpack: config => {
        // 移除 prefetch 插件
        config.plugins.delete("preload");
        config.plugins.delete("prefetch");
        config.plugin('provide').use(webpack.ProvidePlugin, [{
            introJs: ['intro.js', 'introJs']
        }])
    },
    // pluginOptions: {
    //    electronBuilder: {
    //        builderOptions: {
    //            win: {
    //                icon: 'dist/public/Vue.ico'
    //            },
    //            mac: {
    //                icon: 'dist/public/Vue.png'
    //            },
    //            productName: 'FKL-Salary'
    //        }
    //    }
    // },
    productionSourceMap: false, // 生产环境是否生成 sourceMap 文件
    css: {
        extract: true, // 是否使用css分离插件 ExtractTextPlugin
        sourceMap: false, // 开启 CSS source maps
        loaderOptions: {}, // css预设器配置项
        modules: false // 启用 CSS modules for all css / pre-processor files.
    },
    devServer: {
        // 环境配置
        // host: "localhost",
        disableHostCheck:true,
        port: 9999,
        https: false,
        hotOnly: false,
        overlay: {
            warnings: true,
            errors: true
        },
        open: true, //配置自动启动浏览器
        proxy: {
            '/*': {
                target: 'http://127.0.0.1:8080/',
                // 允许跨域
                changeOrigin: true,
                ws: false,
            }
        }
    },
}